Watermarking

ABSTRACT

A watermarking system and method is proposed for still or moving pictures in which a watermark is embedded robustly and simply into DC-values, but without causing unacceptable visible picture degradation. The watermark is secure and can be readily detected, and the method can be used to convey additional data. Also disclosed is a method for watermarking a sequence of pictures in which the visibility of artifacts is reduced. The watermark may carry data and may be used to label a program.

BACKGROUND OF THE INVENTION Field of the Invention

The invention relates to embedding a watermark into either a stillpicture or a sequence of moving pictures; this may be used to assist indetection of copying or identification of the originator of material orfor transmitting hidden data. A watermark is a mark or data sequencethat is embedded substantially invisibly into a picture for helping toidentify the originator or the intended recipient of the picture or todetect tampering.

It has been considered to modulate a watermark onto sample mean values,also known as DC-values, but this has tended to result in unacceptablepicture distortion.

Yeung and Mintzer [Journal of Electronic Imaging 7(3), 578–591 (July1998)] proposed a watermarking system in which a watermark is applied toDC coefficients of a JPEG compressed image. This is stated to producesatisfactory results for an RGB image but there was some noticeabledegradation (blockiness) observed when the watermark was applied toluminance values. Investigations by the inventor have suggested thatsuch a technique is unsuited to high quality image reproduction orbroadcast quality motion video marking as the artifacts tend to becometoo visible, and one is generally dealing with a luminance signal ratherthan an RGB signal.

Qiao and Nahrstedt [IEEE International Conference on MultimediaComputing and Systems, Austin Tex. USA, 28th Jun.–1st Jul. 1998]proposed a watermarking technique in which a watermark is applied to DCTcoefficients in the transform domain. The technique is suitable for MPEGcoded video. This disclosure notes that problems can arise when awatermark is applied to both DC and AC coefficients and suggests that nowatermark should be applied to the DC coefficients. A drawback of thismethod is that the watermark must be applied in the transform domain andthis may require transformation of an image, thereby increasing thecomplexity of the method.

For the above reasons, attempts have concentrated largely on spreadspectrum techniques or embedding information into frequency bands otherthan DC values. The watermark is usually modulated onto a low frequencyband. This makes the watermark more robust against attacks that arebased on low pass signal processing such as data compression or digitalfiltering. This is in line with the properties of the human visualsystem. As a consequence, an attack on a low frequency band forcorrupting the watermark information runs the risk of introducingvisible distortions into the picture. However, for similar reasons,embedding the watermark may present problems; it may either requirecomplex and difficult to reproduce algorithms, may not embed the datareliably, or may introduce visible distortions.

A number of patents assigned to Digimarc Corporation having similardisclosures, of which U.S. Pat. No. 5,832,119 is a representativeexample, disclose a watermarking method in which a periodicallyrepeating picture is filtered to remove low and high frequencycomponents to leave only mid-band components and added to a picture. Inaddition to the drawbacks identified above for techniques of thisnature, a specific drawback with this method which the inventor hasidentified is that the watermark may become visible with certain picturetypes, particularly in flat areas of the picture. Due to the complexityof the method and hence processing required, the method is unsuited, inpractical terms, to marking of moving video sequences, particularly ofbroadcast quality.

The inventor has appreciated that, whilst attempts to modulate awatermark signal onto DC values have generally been unsuccessful for thereasons mentioned above, the use of DC values might offer a robust andsimple watermarking system as compared to conventional techniques, ifthese difficulties could be overcome.

BRIEF SUMMARY OF THE INVENTION

By making use of a plurality of adjustment factors for each watermarkvalue, each of which adjustment factors is a function of a localestimate of visibility of the watermark within the picture and which isa function of the picture sample values (and substantially independentof the watermark values), it has been found that, surprisingly, thewatermark information can be reliably embedded in the picture withoutcausing unacceptable distortion to the picture. The embedded watermarkvalue may then change the local mean or DC-values of the subset ofpixels in which it is embedded, rendering detection simple and reliable.

It will be appreciated that this method may result in a watermarkedpicture in which watermark information is barely present or even notpresent at all in certain regions of the picture where the estimate ofvisibility suggests that the presence of the watermark is likely tocause visible distortions to the picture.

Preferably the magnitude of adjustment factors is determined from thepicture sample values based on an estimate of visibility, preferablyfrom the local variance. This enables the watermark values to beconcealed effectively. There will be a plurality of values calculatedfor each subset, to take into account picture variation, and there ispreferably an independently determined adjustment value for each picturesample, although calculation of neighbouring adjustment factors mayinvolve some overlap to reduce calculation.

The sign of the adjustment factors is preferably a function of thewatermark values, the watermark values preferably comprising a binarysequence of 0 and 1, being encoded as positive and negative signsrespectively, or vice versa. By changing the sign, a robust codingscheme is provided, the magnitude of the change not being critical indetecting the watermark and hence being adjustable to allow thewatermark to be kept substantially invisible. Alternatively, themagnitude may be adjusted in steps; this may increase the available datacapacity but may increase visibility, reduce robustness or increasecomplexity.

In a development, since measures of visibility may be determined fromthe watermarked picture which should correspond substantially to theoriginally determined measures of visibility, it should be possible at adecoder to determine the available room for data and thus to employdynamic allocation of watermark values or data values by encoding moredata (perhaps 2 or even 3 bits) in a region where the visibilityestimate suggests that larger adjustments can be tolerated. Similarly,decoding may disregard regions where a visibility estimate suggests thatno data will be encoded. Weighted filtering may be employed at adecoder, based on an estimate of visibility.

As an alternative to a binary system using positive and negative signs,a three level system in which zero adjustment is employed could be used;this may not be so advantageous for simple watermarking as zeroadjustments would not assist in correlation, but could be used for datasamples carried within the watermark (as discussed below) to increasethe data capacity.

The adjustment factors may be combined with picture values by adding(which term is intended to encompass weighted addition or subtraction);this is simple to implement but effective, but more complex combinationsuch as averaging may be employed.

Where it is desired for the watermark to be robust, for example to carrydata or to make the watermark difficult to delete so that the source canbe identified, as indicated above, the picture samples are preferablysubstantially adjacent. Small translations and distortions will tend toleave at least some of each subset of samples sufficiently unaffectedfor a determination of the watermark value for that subset. A grid maybe defined, preferably substantially rectangular for ease of processing,although hexagonal or other grid shapes may be employed, and the samplesin each region of the grid may be assigned to a subset. In this way,when it comes to decoding, a slight misalignment of the grid willnormally not prevent the majority of samples within a decoding grid fromcarrying the correct value and permitting correct decoding.

When the picture is to be coded or compressed by an algorithm whichpartitions the picture into blocks, for example JPEG or MPEG coding, thegrid preferably corresponds to blocks or groups of blocks of the codingalgorithm. This may enable efficient processing and may also ensure thatthe watermark is reliably carried (more so than if individual watermarkvalues were assigned to pixels in different blocks).

It has been found that if each subset comprises a block of at leastabout 4 by 4 samples (or 16 samples if non-rectangular grouping isused), this provides a much higher degree of robustness against avariety of attacks than a comparative example in which significantlyfewer (or only one) picture samples per watermark value are employed.Preferably, blocks of at least about 8 by 8 samples (or similar size, atleast about 64 samples if non-rectangular grids) are used, morepreferably, at least for broadcast quality images, blocks of at leastabout 8 by 16 (preferably 8 vertically, 16 samples horizontally).

In a preferred development, a restriction condition is applied to thechoosing of watermarks from the available watermarks. This may reducethe amount of data that can be carried but may increase robustness orerror tolerance or detection. In a preferred embodiment, the watermarksare subdivided into subsets (for example 16 watermarks are sub-dividedinto 4 subsets of 4 marks) and a restriction condition related to thesubsets is employed, for example exactly one (or in certain lesspreferred cases another predetermined number, for example in the case oflarger subsets) watermark is chosen from each subset or each of apredetermined number of subsets (for example 1 mark from each of 3 of 4subsets of 4 marks). By applying such a restriction, a measure of errorsor the reliability of the data can be obtained based on the fact thatthere should be a given number (preferably one) of watermarks in eachsubset so if detection yields no marks or a reasonable probability ofmore than one mark in a subset, it can be assumed that the data is noisyor unreliable.

Watermark values may be assigned to substantially the whole of apicture. This may increase the dimension of the watermark and makeunauthorised copying and detection more difficult. However, a repeatingwatermark may be used, or certain portions of the picture may be leftblank.

The watermark may comprise a substantially static component and avariable component, the static component enabling the watermark to bepositively identified, and the variable component carrying additionalinformation, for example one or more of picture (or programme) title,date, author, originator, intended recipient, copying permissions,equipment or recording or coding conditions, user definable data and thelike. Looked at another way, data may be carried with the watermark. Inthe case of a moving picture sequence, a separate hidden data stream maybe carried, some of the watermark assisting in alignment and framing andthe remainder carrying user data. If the application is such that thesource and framing of the sequence can be guaranteed, then no staticwatermark may be needed for synchronisation, and the whole of thewatermark may in fact comprise variable user information.

In certain cases, it may be desirable to make the watermark “fragile”,so that processing of the data can be detected readily by measuringdegradation of the watermark; this may be used for authentication oforiginal copies. This may be achieved by scattering the picture samplevalues of each subset over the picture, and by increasing the number ofwatermark values and decreasing the number of pixels per value. At theextreme, the method may be modified to use only a single picture sampleper watermark value, but this will normally require use of the originalpicture to detect the watermark reliably.

The watermark preferably comprises a pseudo random pattern; this makesit harder for an unauthorised person to detect or apply the watermark.However, in certain applications, a logo or regular pattern may beemployed; this may simplify identification, for example visually from adifference picture.

When the watermark is embedded into a moving sequence, it has been foundthat, surprisingly, although the watermark may be almost impossible todetect when the sequence is viewed frame by frame or in slow motion,artifacts may become visible when the sequence is viewed at normalspeed. Investigation has found that this is due to movement in thepicture causing the effectively static grid corresponding to assignmentof watermark values to appear in a similar manner to a dirty windowoverlaid on the picture. Further investigations have revealed that otherknown watermarking techniques, when examined closely, are prone tosimilar problems. The prior art does not address these unforseenproblems which are peculiar to moving sequences.

The invention further provides methods of creating, embedding anddetecting data-carrying watermarks, methods of marking moving pictures,applications of marked pictures, computer program products and apparatusfor implementing any of the methods described above or below and furtheraspects and preferred features are set out in the other independent anddependent claims respectively, and may also be found in the followingdescription of a preferred embodiment.

BRIEF DESCRIPTION OF THE DRAWINGS

An embodiment of the invention will now be described by way of example,with reference to the accompanying drawings in which:—

FIG. 1 shows a general outline of a watermarking system;

FIG. 2 illustrates partition of a picture into square cells;

FIG. 3 schematically illustrates an example of calculation of variancefor current sample s_(n) and its neighbouring samples that belong toB_(n);

FIG. 4 illustrates partition of a picture into square cells that carryeither a watermark sample or a data bit;

FIG. 5 illustrates sub-division of a set of 16 watermarks into 4 subsetsof 4;

FIG. 6 shows an 8×8 sample block for carrying data;

FIG. 7 shows the blocks of FIG. 6 tiled m×n;

FIG. 8 shows the tiled blocks of FIG. 7 forming a data watermark spreadacross a picture.

DETAILED DESCRIPTION OF THE INVENTION

Referring to FIG. 1, the watermark w is embedded into the originalsignal, resulting in the watermarked signal. The watermarked signal maybe changed by friendly attacks that are caused by transmissiontechniques e.g. data compression or by hostile attacks that deliberatelyattempt to remove the watermark. Therefore, the signal ŝ_(w) instead ofs_(w) feeds the input of the watermark-detector. The detector outputs abinary decision which indicates if a given watermark is present in theinput signal or not.

In this description restricted watermarking means that the originalsignal is also needed as an input to the watermark-detector. In thiscase watermark detection is restricted to users who are in possession ofthe original signal. Unrestricted watermarking means that the originalsignal is not needed during detection. Both cases will be addressed.

The watermark is a zero-mean (to prevent a change in global mean[average brightness] of the signal after watermarking) white noiserandom signal that is chosen independently from the original signal anddifficult-to-predict for an attacker. The role of the watermark issimilar to the role of the secret key in a symmetric crypto-system. Apseudo random bit generator can be used for obtaining the antipodalseries w(1), . . . w(k), . . . w(K) withw ²(k)=1, k=, . . . , K.  (1)In restricted watermarking the seed-number of the bit generator candepend on the value of a hash function that is applied to the samples ofthe original signal for providing authentication.The original picture s is partitioned into cells. This is shown in FIG.2 for a square cell shape. There is no restriction on the cell shape andany other tiling of the x/y-plane can be used just as well, for examplea hexagonal grid. The cell shape and the cell size are parameters thatare kept secret together with the watermark w. Let C_(k) denote the setof indices that select the samples of the k-th cell. The watermark ismodulated onto the sample values ass _(w)(n)=s(n)+w(k)·α²(n), nεC_(k).  (2)The magnitude depends on a visibility measure and determines by how muchthe amplitude of a sample can be changed without creating a visibledistortion. For example the local variance can be calculated in a smallwindow of 7×7 samples that is centred at the current sample position,see FIG. 3. Let B_(n) denote the set of indices that select the samplesin the neighbourhood including the current index n.The variance is calculated as

$\begin{matrix}{{{var}(n)} = {\left( {\frac{1}{B_{n}} \cdot {\sum\limits_{I\;\varepsilon\; B_{n}}\;{s^{2}(l)}}} \right) - \left( {\frac{1}{B_{n}} \cdot {\sum\limits_{I\;\varepsilon\; B_{n}}\;{s(l)}}} \right)^{2}}} & (3)\end{matrix}$Averaging over all samples gives the mean value

$\begin{matrix}{\overset{\_}{var} = {\frac{1}{N} \cdot {\sum\limits_{n = 1}^{N}\;{{var}(n)}}}} & (4)\end{matrix}$Additionally, the positive modulation index q is introduced for allowinga global control of the energy of the modulated watermark, resulting inthe magnitude

$\begin{matrix}{{\alpha^{2}(n)} = \left( \begin{matrix}\frac{{2 \cdot {{var}(n)}} + \overset{\_}{var}}{{{var}(n)} + {2 \cdot \overset{\_}{var}}} & {{{var}(n)} > {th}_{flat}} \\\; & {if} \\0 & {{{var}(n)} \leq {th}_{flat}}\end{matrix} \right.} & (5)\end{matrix}$As a consequence of eq. (5) no watermark information is embedded intoflat areas that are detected with a threshold th_(flat).Eqn. (5) is one example for the calculation of the magnitude α²(n) andmore sophisticated models of the human visual system can be applied incombination with the embedding method that is specified in eq. (2).After transmission and possible attacks the received signal {hacek over(s)}_(w) is partitioned into cells of appropriate shape and sizecorresponding to the embedding procedure. For each cell a sample meanvalue is calculated, hereafter called DC-value. The DC-value of the k-thcell is calculated as

$\begin{matrix}{{{{DC}(k)} = {\frac{1}{C_{k}} \cdot {\sum\limits_{n\;\varepsilon\; C_{k}}\;{{\overset{\bigvee}{s}}_{w}(n)}}}},} & (6)\end{matrix}$In restricted watermarking a corresponding DC-value is calculated fromthe original signal s,

$\begin{matrix}{{{{DC}_{ori}(k)} = {\frac{1}{C_{k}} \cdot {\sum\limits_{n\;\varepsilon\; C_{k}}\;{s(n)}}}},} & (7)\end{matrix}$and in unrestricted watermarking a prediction value is calculated fromthe DC-values specified in eq. (6),

$\begin{matrix}{{{DC}_{pred}(k)} = {\frac{1}{C_{k}} \cdot {\sum\limits_{\underset{l \neq k}{l}}\;{\beta_{l} \cdot {{DC}(l)}}}}} & (8)\end{matrix}$The coefficients β₁ are the same for each picture and can be calculatedby linear regression for minimising the mean squared error between DC(k)and DC_(pred)(k). However, in terms of computational complexity asimpler prediction method is to average the DC-values of theneighbouring cells.In restricted watermarking ΔDC(k)=(DC(k)−DC_(pred)(k)) and inunrestricted watermarking ΔDC(k)=(DC(k)−DC_(ori)(k)) is correlated withthe watermark,

$\begin{matrix}{{corr} = \frac{\left( {\frac{1}{K} \cdot {\sum\limits_{k = 1}^{K}\;{\Delta\;{{{DC}(k)} \cdot {w(k)}}}}} \right) - {\left( {\frac{1}{K} \cdot {\sum\limits_{k = 1}^{K}\;{\Delta\;{{DC}(k)}}}} \right) \cdot \left( {\frac{1}{K} \cdot {\sum\limits_{k = 1}^{K}\;{w(k)}}} \right)}}{1 - \left( {\frac{1}{K} \cdot {\sum\limits_{k = 1}^{K}\;{w(k)}}} \right)}} & (9)\end{matrix}$The detector decides upon the presence of the watermark in the signal{hacek over (s)}_(w) if the magnitude of the correlation value exceeds athreshold, |corr|≧th_(detect). The sign sgn(corr) of the correlationvalue signals one hidden data bit if the presence of the watermark isdetected. As no watermark information is embedded into flat areas thedetector has the option to exclude flat areas during the evaluation ofeq. (9).In restricted watermarking it is easier to align the sampling grid ofthe received signal {hacek over (s)}_(w) relative to the sampling gridthat was used for embedding the watermark. This can be done by comparing{hacek over (s)}_(w) with the original signal s which also allowscompensation for geometric distortions such as scaling or rotation. Inunrestricted watermarking the sampling grids can be aligned by a searchfor maximum correlation among a set of horizontal and vertical offsetvalues that are applied to the sampling grid of {hacek over (s)}_(w). Asevery watermark sample is spread over one cell perfect alignment of thesampling grids is not needed for obtaining a good correlation. Thisproperty improves significantly the robustness against attacks thatre-sample the picture including geometric attacks that introduce anunnoticeable amount of distortion. Additionally, the cell size and thecell shape can be adapted for improving the robustness against specifictypes of geometric distortions. Rotation, cropping or scaling by anoticeable amount can be handled by hypothesis testing which howeverresults in a computational intensive search for maximum correlation.A common method for increasing the capacity of the hidden data channelis to partition the picture into sub-pictures and to apply the abovewatermarking method to each sub-picture. Another method for increasingthe data capacity shall now be exemplified for a square cell shape, seeFIG. 4. The white cells are used for the watermarking method asdescribed above. Firstly, the watermark is detected from the white cellsat the receiver. This also allows synchronisation and alignment of thesampling grid. Secondly, one data bit is detected from each dark cell asfollows. For the k-th cell the DC-values of eqs. (6)–(8) are calculated.In restricted watermarking, the sign of the differenceΔDC(k)=(DC(k)−DC _(ori)(k))signals the data bit and in unrestricted watermarking the sign of thedifferenceΔDC(k)=(DC(k)−DC _(pred)(k))signals the data bit. At the transmitter the data bit is embeddedsimilar to eqs. (2)–(5), the watermark sample is replaced with theantipodal data bit in eq. (2). As no information is embedded into flatareas and prediction can fail in local areas of the picture the detectorhas the option to evaluate the data bit only ifth _(data,min) <|ΔDC(k)=(DC(k)−DC _(pred)(k))|<th _(data,max),this can be taken into account during embedding.The above method significantly increases the gross data rate. However,robustness is lost in comparison with the watermark that is carried onthe white cells. Therefore, error correcting codes are applied to thedata that is carried on the dark cells.We have described above methods of increasing data rate. In addition tothe prediction technique already outlined we will describe another wayof increasing the payload. Instead of using one pseudo-random bitpattern as the watermark w a plurality of N substantially statisticallyindependent patterns w₁, . . . , w_(N) is used. The patterns arepreferably statistically independent with the following properties:w ² ₁= . . . =w² _(N)=1  (1)E[w ₁ ]=. . . =E[w _(N)]=0, where E is the expectation operator  (2)E[w _(k) ·w _(n)]=0 if k≠n  (3)Each payload is represented by a combination of three watermarks.Although there could be fewer (for example 2) or more watermarkscombined to increase the data capacity, we have found that,surprisingly, by combining exactly three watermarks from a number(ideally a defined set) of substantially independent watermarks, anoptimum result may be achieved in terms of reliability of detection andincrease in data payload. Thus, there is a total of N·(N−1)·(N−2)/6possible combinations (neglecting trivial or redundant combinations inwhich two or three watermarks are the same or the order of combinationis altered [which cannot be detected using simple combination ofwatermarks with the picture]). For example, if N=16 there are 560combinations, and one can carry a payload of 9 information bits, plusreserved combinations for other signalling. Surprisingly, we have foundthat the payload may be most advantageously increased by selecting areasonably large number of independent watermarks in this set or“library” and then combining exactly three of these in any one picture(rather than combining larger numbers of watermarks), the maximum sizeof the library being dependent on the ease with which watermarks can bedistinguished, so varying with picture size. In order to ease thenotation let us further assume that the actual payload is represented bythe three watermarks w₁, w₂, w₃. One could then generate a watermark w,by calculating the average value of w₁, w₂ and w₃.w=[w ₁ +w ₂ +w ₃]/3  (4)However, this combination has the property that the expectation value ofthe product of any of the individual watermarks with the combinedwatermark is ⅓.E[w·w ₁ ]=E[w·w ₂ ]=E[w·w ₃]=⅓  (5)A more advantageous way of combining w₁, w₂ and w₃ is,w=[w ₁ +w ₂ +w ₃ −w ₁ ·w ₂ ·w ₃]/2  (6)The watermark w then has the following properties,w ²=1  (7)E[w]=O  (8)E[w·w ₁ ]=E[w·w ₂ ]=E[w·w ₃]=½  (9)The watermark w is embedded in the DC-values of the picture in the usualway. For detection of the payload one generates the watermark w′w′=w ₁ + . . . +w _(N)  (10)and cross-correlates the watermark w′ with the DC-values of the picturesin the usual way. If a correlation-peak is detected, the payload isretrieved by cross-correlating each watermark w₁, . . . , w_(N)separately with the DC-values and selecting the three watermarks withthe largest correlation peaks. Although, as mentioned above, it isgreatly preferred if the patterns are independent and satisfy the aboverules, it may be desirable in some cases to use patterns which are nottruly independent but have a low level of cross correlation (this mayincrease the number of patterns that can be used or simplify patternselection); this may make it harder to detect each component reliably,but this may be useful in certain applications, for example where it isintended that the data embedded should be well concealed or “fragile”(i.e. easily corrupted). The above provides a method of combining threebipolar watermarks to produce a single bipolar watermark with theproperty that the product of the combined watermark with each of theconstituent marks has an expectation value of ½.To increase the reliability of data embedding, the available watermarksmay be sub-divided into subsets. To recap, the method described abovegave a possible 560 combinations, based on the binomial co-efficient

$\begin{pmatrix}16 \\3\end{pmatrix} = {\frac{16!}{{3!}.\left( {16 - 3} \right)} = 560}$which, as mentioned, is just over 2⁹.In a modified proposal, the set is portioned into 4 subsets of 4 marksand exactly one mark is chosen from each of 3 subsets, as schematicallyillustrated in FIG. 5. This gives as a number of possible combinations

$\begin{matrix}{{\begin{pmatrix}4 \\3\end{pmatrix} \cdot \begin{pmatrix}4 \\1\end{pmatrix}^{3}} = 256} & \;\end{matrix}$which is exactly 2⁸ so exactly 8 bits can be carried, with increasedrobustness, the first binomial coefficient giving the number of ways ofchoosing 3 subsets from 4 and the second giving the number of ways ofchoosing 1 from 4 watermarks in a subset.Although the number of bits of information that is conveyed has beenreduced, a detection strategy can be used that can give increasedconfidence in the reliability of any data detected.When correlation detection is used, the presence of a peak, over acertain threshold, in the correlation surface of the watermark and thepicture (after pre-processing), indicates that the mark has beendetected.The following procedure may be used to extract the data conveyed by thewatermarks.1) Check that exactly three subsets have been used.

-   -   Cross-correlate the picture with each of the 16 watermarks in        turn. If there are more or fewer than three cross-correlation        functions with peaks above the detection threshold then no data        can be recovered.        2) Inspect the distribution of the three peaks.    -   If there are three peaks, they should each belong to a different        subset of 4 of the 16 possible watermarks. If more than one mark        in a subset has a cross-correlation peak above the threshold        then no data can be recovered.        3) Each peak conveys 2 bits of data, and the set of three        conveys 2 bits of data.        A particular advantage is that a soft decision threshold can be        used, when detection falls below the threshold. For example, the        three highest peaks that are derived from different subsets        could be used. That is, the threshold can be varied until        exactly 3 peaks are detected, with one in each subset, the fact        that each mark is in a different subset serving as a check (if        the three marks giving the highest peaks are not in different        subsets, an error can be assumed).        Higher Data Rate Watermarking        A variety of methods with differing data capacities have been        discussed. A further embodiment which may allow the amount of        data carried to be increased will now be described, with        reference to FIGS. 6–8.        To convey a data payload within a video watermark, such as the        system described previously, the following method may be        employed to scatter the payload data across the picture.        The payload, for example 64 bits having values +1 or −1, may be        configured as a block of 8×8 bits (as shown in FIG. 6), which        may then be tiled m×n times to form a data array as in FIG. 7.        Bi is one bit in this 8×8 block.        In the watermark encoder each occurrence of payload data Bi is        convolved with a pseudo-random sequence of length m×n        corresponding to a predetermined key. This is done for each of        the 8×8 payload data bits. Each resulting value in this        (8×m)×(8×n) array is then used as a watermark. Of course, where        different payload sizes and shapes and different tiling patterns        are used, the bits of the payload will be convolved with the        bits of the key in an appropriate fashion. Convolution of the        data is most preferably performed by a multiplication        (considering the data to be signed + or −) or equivalently an        XOR [or XNOR] operation (considering the input data to be        unsigned). The process may be explained as follows:—

Bipolar multiplication Unipolar XOR Data Key Watermark Data KeyWatermark +1 +1 +1 1 1 0 +1 −1 −1 1 0 1 −1 +1 −1 0 1 1 −1 −1 +1 0 0 0The watermark is ideally a zero mean, as indicated above, so if thewatermark is generated from a logical XOR, the binary values 0 and 1would in fact be applied to the picture as bipolar values, with 1corresponding to +1 and 0 corresponding to −1 (or vice versa). It willbe noted that the absolute amounts to be added to or subtracted fromeach pixel value may in fact vary from pixel to pixel, based on a localestimate of visibility, as described above; however, whilst this ishighly preferred, the method of generating a watermark which carriesdata can be used in conjunction with another method of embedding thewatermark.Each bit of the resulting watermark is applied to a block of pixels in apicture (ideally 4×4, which is found to give optimum results in terms ofenabling each data bit to be reliably detected and allowing a large keyand data payload size, but other block sizes and shapes may be used)such that the array is spread over the whole or part of the extent ofthe picture, as shown in FIG. 8. In a most preferred example, for atelevision picture of 576 lines by 720 pixels, this gives 18×22.5 blocksof 8×8 data bits each spread over a block of 4×4 pixels; this allows 405bits for the key (the geometric arrangement is not critical, so the halfblocks can be split over 2 lines). This arrangement is advantageous asthe relatively large key allows reliable detection, but still allows auseful data payload. Of course, other payload sizes and configurationsmay be used, for example 16×8 blocks may carry 128 bits with a 202 bitkey and 16×16 blocks may carry 256 bits, allowing 101 bits for the key;such a key may still be reliably detected in many cases. For example ifthe watermark is applied to a signal as it is transmitted, such a keyshould be detectable at a receiver, for example to enable programmeidentification information to be decoded reliably. The blocks need notbe square, nor even rectangular (though these are most convenient forefficient packing of data, and less vulnerable to corruption of data byresizing operations) or even regular, but any shape which can be appliedmany times over the picture and interlocking or disjointed, butpreferably non-overlapping shapes, may be used. To summarise, the methodof embedding the watermark may be considered in three ways as follows:—1) Block by BlockThe data block is replicated n×m times, so in our example we canconsider a set of 405 8×8 data blocks all containing identical data. 405individual pseudo-random sequences of length 8×8=64 (having values +1and −1) are then convolved with the data in each block.The blocks are then assembled to make a single rectangular array in someconvenient manner, and each point in that array is expanded to cover, inour example, say 4×4 individual pixels in the picture (for a picture ofnormal European TV resolution, 720×576). This watermark may then becombined with other watermarks, as discussed below.2) Whole PictureThe picture area is to be considered as groups of say a×b pixels. In ourexample, this is 4×4. The data block is replicated n×m times across theentire picture, such that each element of an 8×m by 8×n (180×144) arraycorresponds to a 4×4 cluster of picture pixels. Special arrangementsmust be made for edge effects if n or m are not integers. In our examplea single pseudo-random sequence of length 8×8×22.5×18=25920 (havingvalues +1 and −1) is then convolved with the 180×144 array.Each point in the resulting array is expanded to cover, in our example,4×4 individual pixels in the picture (for a picture of normal EuropeanTV resolution, 720×576). This watermark may then be combined with otherwatermarks, as discussed below.3) Data Bit by Data BitEach data bit in the 8×8 data block is replicated n×m times, to create aset of 64 m×n arrays. To take account of the non-integer value of m orn, the resulting array may have varying number of data points on eachline, or may be considered as a set of 64 405-element linear arrays. 64individual pseudo-random sequences of length 22.5×18=405 (having values+1 and −1) are then convolved with each array.The 64 arrays are then interleaved (every 8 positions vertically andhorizontally, or in some other way) to make a single rectangular arrayof size 180×144 (in our example), and each point in that array isexpanded to cover, in our example, 4×4 individual pixels in the picture(for a picture of normal European TV resolution, 720×576). Thiswatermark may then be combined with other watermarks, as discussedbelow.The resulting watermark may be applied as a single watermark to thepicture, and detected as for other watermarks by cross correlation withthe key.It will be appreciated that the three examples mentioned above may beapplied to different watermark and data payload sizes.Most preferably, using the principles discussed above, and, as discussedfurther below, a further registration watermark is included, at a knownposition with respect to the data-carrying watermark. It is desirable,as discussed above that the registration watermark is substantiallyorthogonal to the data carrying watermark. It will be appreciated thatthe data carrying watermark varies with the data, and it is notpracticable to test every possible data set for orthogonality of theresulting data-carrying watermark with the registration watermark. Itis, however, possible to test each (405 bit or whatever size) keysegment for degree of correlation with the corresponding (i.e.co-located) segment of the registration watermark to ensure a lowcorrelation for each segment. Since the data merely affects the sign ofeach segment, if the correlation is low, it will remain low whatever thedata. Thus, in the ideal case where the correlation between each keysegment and each corresponding watermark segment is exactly zero, thiswill remain true whatever the data, and the sum of the correlations,being the correlation between the complete data-carrying watermark andregistration watermark, will also be zero. It is important to note thatsimply correlating a complete data carrying watermark (for example withdummy data all 1 s) with the complete registration watermark will notgive a reliable test as some segments may cancel by chance, but wouldnot cancel if the data were different.Turning to the method of detection, this may comprise:—

-   A) Perform local averaging over each 4×4 (or whatever was used)    block of pixels to extract DC prediction values (as described above,    see particularly equation 8 above and related description). In a    preferred implementation, we have found that performing 2×2    averaging, determining DC prediction values for each 2×2 block, and    then forming a single average DC prediction value for each 4×4 block    may yield better results. This feature may be applied independently,    in particular to the basic watermarking technique mentioned above.-   B) For each data bit position within each 8×8 block (or whatever    shape or size was used), determine the corresponding n×m block (or    whatever shape was used) or sequence of key bits to correlate with    the predetermined key (or one of a number of predetermined keys—see    below). A strong positive or negative correlation gives a positive    or negative value for the data bit accordingly (or vice versa) and    failure to correlate above a threshold indicates that the picture    may be corrupted, or the data unreliable.    As an optional check, the key values can be re-correlated, using the    determined data values, to give a further measure of reliability. If    the starting position in the picture was not certain, the process    may be repeated for different positions or offsets, to determine the    position which gives the maximum correlation.    The key used most preferably varies for each data bit. Looked at    another way, each key (say 405 bits) can be viewed as a key segment    of a larger key (64*405 bits). Using a different key for each bit    ensures that the data bits can be distinguished and are not decoded    in the wrong sequence due to shifts in the picture, and also avoids    repeating patterns in the watermark, thereby reducing detectability.    On the other hand, in the event that the data is shifted, the data    will then become undetectable without searching for a registration    point. In a preferred implementation, an additional registration    watermark is provided, as discussed below, to facilitate    registration; once the position of the known, higher dimension    watermark is determined accurately, the data can be reliably    detected. As with the embedding process, the detection process can    be viewed in three ways, as follows:—    1) Block by Block    In the detector the picture frame is processed creating a DC    prediction error matrix of dimensions 22.5×8 by 18×8. This is broken    down into 405 individual 8×8 blocks, each of which is multiplied by    the pseudo-random sequence with which it was originally convolved.    Averaging the 405 blocks will produce a single 8×8 correlation    matrix, with positive or negative values in each cell of the matrix    corresponding to the sign of the original data.    2) Whole Picture    In the detector the picture frame is processed creating a DC    prediction error matrix of dimensions 180 by 144. This is multiplied    by the same pseudo-random sequence as that with which it was    originally convolved. Averaging every eighth value along every    eighth line (405 points) for each position of an 8×8 array will    produce an 8×8 correlation matrix, with positive or negative values    in each cell of the matrix corresponding to the sign of the original    data.    3) Data Bit by Data Bit    In the detector the picture frame is processed creating a DC    prediction error matrix of dimensions 180 by 144. This is broken    down into 64 individual m×n arrays by the inverse process by which    they were assembled into a single array, and each of them is    multiplied by the pseudo-random sequence with which it was    originally convolved. Averaging the 405 values in each of the 64    blocks will produce 64 correlation values, with positive or negative    values corresponding to the sign of the original data.    It will be seen that all three embedding and detection methods are    equivalent and have equivalent effects on a picture, but may differ    in the way in which they are implemented in hardware or software    (all aspects and features of the invention may be implemented in    either or a combination of both), for example in the loop structure    of a software implementation or the processing layout of a hardware    implementation.    To improve accuracy and reliability of detection, it is useful to    include a further watermark, the content of which is fixed, or which    has a larger fixed (key) content and smaller data content, for    example the watermark may be used as one of several (most preferably    three) watermarks w_(k), in the manner described above. As stated,    the watermark may be combined with one or more fixed watermarks or    further data carrying watermarks. In the latter case, the different    data carrying watermarks are preferably convolved with substantially    orthogonal keys. In one example, a single fixed watermark, selected    from a small group of fixed watermarks. Thus, applying the    principles described above for encoding data by including exactly    three from sixteen watermarks, ideally sub-divided into four subsets    of four watermarks (or whatever other numbers are chosen), in this    case, the keys rather than complete watermarks are chosen as    indicated above and the watermarks themselves are generated by    convolving the keys with further data. Thus, choosing 3 from 4    subsets of 4 keys allows 8 bits to be encoded, applying the    principles mentioned above. In addition, each key is convolved with    an 8×8 block of 64 bits of data, giving a total of 3*64+8=200 bits.    It will be appreciated that certain information will be carried more    robustly than other information, and the principle of carrying    information with differing degrees of robustness may be    independently provided, using other methods for encoding the data. A    preferred implementation has one registration watermark, preferably    selected from a relatively small set of possible watermarks, the    choice of watermark encoding a few bits of information and two    data-carrying watermarks, preferably each using a fixed key and    encoding typically 64 bits of data each.    References to convolving data with a key as used herein are not    limited to the multiplying and XOR operations described but apply    more generally to combination in which the resulting watermark is a    function of both the data and the key, particularly any form of    combining wherein the data can be extracted from the resulting    watermark using the key.    The above described methods for carrying hidden data and    watermarking can be applied to both still and moving pictures. In    the latter case motion imposes an additional problem in terms of    attacks and visibility of the watermark, and the spatial model of    eqs. (3)–(5) may have to be enhanced to a spatio-temporal model,    resulting in motion-compensating embedding and detection. A simpler    method is to embed the same static watermark only in every n-th (for    example every second or third) picture of a moving sequence and/or    to alternate between different static watermarks and/or grid    patterns.    It is preferable in the case of a moving picture to change the data    carried by the watermark only at certain prespecified points,    preferably when a shot change is detected or when an accumulated    change in picture content exceeds a threshold. Preferably, the    watermark position is moved at a data change, as discussed below.    Preferably a key portion of the watermark is changed when the data    is changed, for example a key sequence may be stepped through. The    key sequence may be generated from a pseudo random sequence,    preferably having a seed value, preferably using a Blum, Blum, Shub    random number generator. One or more seed(s) for the random number    generator may be communicated to a decoder, preferably embedded in a    picture by a method disclosed herein and one or more seed or feature    of the algorithm may be stored in the decoder so that the decoder    may follow the sequence but an unauthorised party not knowing the    seed and algorithm cannot easily do so.    To detect such a watermark, it is necessary to search for the    position of the watermark at each shot change. In a detection method    which may be provided independently, the invention provides a method    of detecting a watermark in a sequence of moving pictures comprising    determining an expected position of the watermark and thereafter    detecting the watermark based on the expected position, wherein the    expected position is re-determined following a shot change or a    change in picture content above a threshold.    To reduce the visibility of a watermark in a sequence of moving    pictures, it may be desirable to invert the sign of the watermark    between pictures each time it is embedded, or according to a    predetermined or pseudo-random sequence; in this way the mark will    tend to average to zero (not exactly due to picture content    modulation) and so will be less visible. This feature may be    provided independently or in combination with other features.    The position of the watermark may be moved, particularly if the    watermark is a simple pattern such as a chequerboard or the like.    The position in the picture can be determined by correlation with a    fixed watermark. The position, or more preferably (this is more    rugged), relative movement may itself be used to encode information,    for example with up, down, left, right being assigned to 2 bit code    pairs, or 3 bits if diagonal movement is encoded. The distance moved    may be used to encode further information, although this may be less    rugged, particularly if the picture is processed by an effects    processor. Each of these features relating to movement may be    provided independently or in combination with other features.    In one preferred implementation, which may be provided    independently, the watermark is moved, preferably randomly    (preferably based on a random noise generator rather than a pseudo    random sequence generator) substantially at each shot change, or    whenever a measure of accumulated change in picture content exceeds    a threshold. In the case of a data carrying watermark, preferably    the data carried is changed at the same time as the watermark is    moved, preferably every shot change. Such changes can assist in    reducing detectability by unauthorised persons.    To hide the watermark better, it may be “attached” to a moving    object and may move with the object. For example, using algorithms    similar to MPEG-2 algorithms to assign motion vectors to blocks    (indeed the same coding when the picture itself is to be MPEG    coded), a watermark or portions of a watermark may be applied to    blocks and then move with the blocks. A drawback, however, is that    decoding such a picture will normally require either some    information from the original picture or complex image processing    algorithms (to identify the objects to which the watermark is    attached). This may nonetheless be useful when the picture is being    compared to an original version of the picture, for example to    detect copying as it will be hard for a pirate to identify and    remove the watermark. This feature may be independently provided.    To explain the watermarking of a moving sequence in more detail, the    process of averaging many pictures together to produce a single    picture has the effect of reducing the variance of the picture    luminance if the pictures are time-varying. If the watermark is    static the result is that the amplitude of the watermark becomes    larger relative to the variance of the picture luminance. If a    sufficiently large number of watermarked pictures are averaged, the    dominant feature will be the watermark. In practice this might be of    the order of 6000 pictures-4 minutes at television rates. This    property may be undesirable since it may assist in revealing the    ‘secret key’ of the watermark. Another problem that may arise when    pictures that contain motion are watermarked is that the static    watermark may become more visible when the picture to which it is    applied is moving. The subjective effect is that of seeing the    picture through a glass screen containing imperfections. This may be    undesirable for two reasons, because it represents a reduction in    the quality of the signals that are produced and because it gives a    clue about the nature of the watermarking process that might be    useful to malicious persons, in a similar manner to the problem of    averaging mentioned above.    Above, motion-compensated embedding is proposed; a    motion-compensation method will now be described in more detail in    which the static watermark pattern is moved to follow the average    motion of the contents of the picture. The features to be described,    as well as the general feature of the watermark following motion in    a picture, may be employed independently of other features and the    features are independent of the precise implementation method used.    To implement this method, as a first step, the average motion of the    picture is determined; this may be achieved by any of a number of    known methods, such as phase correlation or block matching, each of    which have known relative advantages and disadvantages and the    implementation is not limited to any particular method. The strength    of the watermark is preferably reduced in areas where the actual    motion does not match the average motion.    As will be appreciated, the process of determining whether the    average motion is a good estimate of the actual motion in a    particular part of the picture can be done in several ways and the    embodiment is not limited to any particular method. One example of a    more accurate method is to divide the picture into smaller blocks    and perform a block-matching or correlation process on pairs of    blocks. This kind of method is typically used in MPEG-2 video coders    to calculate motion vectors. An example of another method, which is    less accurate, but computationally far simpler, is simply to compare    luminance levels, pixel-by-pixel, between an actual picture and a    picture predicted using a motion estimate. If there is a significant    difference, then it is assumed that the motion estimate was not    accurate.    Detection typically relies on averaging several pictures and account    must be taken of the average motion before this. Before the picture    sequence is added together, each picture must preferably be shifted    to undo the average motion relative to the first picture. Again, the    precise method of determining average motion is not critical but it    is very highly desirable that the process by which the average    motion estimate is made is the same as in the embedding process;    otherwise errors may be introduced. A specific implementation of the    above will now be described in yet further detail.    An exemplary embedding process is as follows:    1) a watermark W_(k) is embedded in picture P_(k)    2) the average motion, v_(k), from P_(k) to picture P_(k+1) is    measured.    This may conveniently be achieved by calculating the    cross-correlation function of picture P_(k) and P_(k+1); this has    the benefit of being relatively simple to implement and readily    applicable in the step of detection of the watermark. Another    benefit is that the apparatus may already include hardware    accelerators (or optimised code) for calculating cross correlation    of at least a portion of a picture, for other reasons.    3) a spatially shifted watermark W_(k+1) is calculated by applying a    cyclic shift to W_(k) according to the motion estimate v_(k)    4) the error, E_(k+1), in the estimated picture is calculated.    One way this may be achieved by applying the same shift to P_(k) to    give P*_(k+1), and calculating the difference between pixel    luminance values in the estimate P*_(k+1) and the actual P_(k+1).    Another, more advanced, method for calculating the error E_(k+1) is    to compare for each pixel the accuracy of the global shift with the    estimate of a ‘true’ motion estimator.    5) the watermark W_(k+1) is then modulated according to the error    signal E_(k+1) to generate W′_(k+1)=W_(k+1)·f(E_(k+1)).    The function f is preferably chosen to assist in concealing the    watermark in areas where the motion estimate is not accurate and is    preferably, but not necessarily, a non-linear function of the error    signal. However, the function should also be readily implementable    and one simple example is the use of a linear function (C−|E_(k+1)|)    where C is a constant equal to the possible range of the error E.    The function f may also take into account the occurrence of a shot    change or of a still picture displayed over several frame periods;    various functions may be chosen depending on the degree to which    concealment is required and the computational power available to    implement the function.    6) the modulated, shifted watermark W′_(k+1) is embedded into the    picture P_(k+1) substantially as described in detail above for    static pictures.    This process is then repeated starting at step 2).    A corresponding detection process is as follows:    1) the average motion, v_(k), from P_(k) to picture P_(k+1) is    measured.    As above, this may conveniently be achieved by calculating the    cross-correlation function of picture P_(k) with P_(k+1), although    other methods may be used in both cases.    2) a spatially shifted version of P_(k+1), P′_(k+1), is calculated    by applying a cyclic shift opposite to v_(k)    3) the spatially shifted picture P′_(k+1) is added to P_(k)    4) the average motion, v_(k+1), from picture P_(k+1) to picture    P_(k+2) is measured by calculating the correlation function of    picture P_(k+1) with P_(k+2)    5) a spatially shifted picture P′_(k+2) is calculated by applying a    cyclic shift opposite to (v_(k)+v_(k+1)) to P_(k+2)    6) the spatially shifted picture P′_(k+2) is added to the sum of    P_(k) and P′_(k+1) Steps 4), 5), and 6) are repeated over the number    of pictures, N, required for an adequate level of detection to    produce a motion compensated average picture P″    P″=(P _(k) +P′ _(k+1) +P′ _(k+2)+ . . . +P′_(N+k−1))/N    7) the cross-correlation function of the average picture P″ with the    watermark W_(k) is calculated as for a static watermark (it will be    noted that this may employ or share some hardware or software with    the cross-correlation used to determine motion)    The use of motion-compensated watermarking thus makes embedded    watermarks difficult to detect by unauthorised individuals and    reduces picture degradation.    Preferred Applications    The uses of the watermark fall broadly into two categories, one is    identification, the other is authentication. Identification    associates the signal with descriptive information. In general, the    association is made by using the watermark to convey a unique    identification number that points to a record in a database holding    more information. Authentication establishes the credibility of a    signal. To identify a signal the watermark should be difficult to    remove, should be robust against distortions and should be difficult    to perceive. To authenticate a signal the watermark should be    difficult to create (or imitate), should be sensitive to distortions    but can be easy to perceive. The system described above is    particularly useful for identification, but, as discussed, may be    adapted for either application. There are many scenarios in which    the identity of the signal is of significance. Some of these are as    follows:    Copyright Protection

Somebody who has created something of artistic worth might wish to berewarded for the use of their creation. A broadcaster who creates atelevision programme usually retains rights over the programme. Limitedrights to the programme might be sold to another broadcaster permittingsome use of the programme—a defined number of broadcasts in a definedgeographical area perhaps. The broadcaster owning the rights would likeknow that the rights granted are not exceeded. If a watermark is addedto the programme before it is sold, monitoring of broadcasts around theworld can generate reports of detection of the broadcast of theprogramme by virtue of detecting the watermark. The record of thedetections can be analysed to find out whether the rights granted havebeen exceeded. Copyright infringements that might be found in this waywould include the transmission of a programme more times than wereagreed, transmission of the programme in more geographical regions thanwere agreed, or the theft of the programme (either by recording orretransmission of a legitimate broadcast) and use by someoneunauthorised. To identify the route by which a programme came to be usedillegitimately, a watermark can be made specific to an individual copyof the programme. Such a watermark is often called a fingerprint. Thiscan be used to identify the recipient of the programme of which therights were infringed as well as the originator.

Copy Protection

As a step further on from detection of copyright infringements, awatermark can also be used to control the duplication of material. If arecording system is used that will not record signals in which itdetects a particular watermark, then this provides a means of preventingillegitimate copies of the recording being made by that system. Arelated application would use an authenticating watermark to preventreplay of signals unless the mark were detectable in the signals.

Production Meta-Data Tracking

The processes that are involved in producing television programmes areoften complex and numerous. To keep track of all the programme materialduring this procedure can be difficult. The descriptive information,called meta-data, associated with the picture or sound signal (such aswhat it is, where it came from, where it has been used, where it will beused) can easily become dissociated from the signal itself. A simpleexample would occur when a self-adhesive label carrying a uniqueidentifying programme number falls off the side of a video-cassette. Anidentifying watermark embedded in the pictures can be used to relate thepictures back to the descriptive information. Data embedded may comprisea SMPTE Unique Material Identifier (UMID) or a subset of the datadefined therein or a proprietary programme identifier such as a BritishBroadcasting Corporation Audio-visual number. Considerations pursuant tothe invention suggest that, for most purposes, a 32 bit number may beadequate. However, 48 bits is preferable and a 64 bit identifier enablesmaximum flexibility of encoding for a variety of producers, users andpurposes. Since it has not hitherto been easy to embed such amounts ofdata in a picture, prior art considerations have concentrated on packingdata into a small identifier, rather than increasing the data payload.

The stage of the production process at which such a watermark isembedded depends of the information tracking requirements. Conceivably,the watermark could be embedded by a camera and could consist of aunique identifier which conveys the time of day and geographicallocation as well as a serial number corresponding to the camera. Thiswould allow the plethora of constituent video clips that are combined tomake a typical television programme to be identified and traced back totheir source at any stage of the process, even, given sufficientrobustness, after broadcast and re-recording.

At each stage of the production process, including final broadcast,every piece of equipment, on detecting the watermark, could update adatabase that records the use of all programme material. This can beused to check that contractual agreements relating to rights are notbeing breached, or to ensure that when material is used anyone entitledto payment for its use is paid.

Each feature disclosed herein may be independently provided, unlessotherwise stated. The appended abstract is incorporated herein byreference.

1. A method of embedding a watermark signal comprising a series ofwatermark values in a picture signal comprising a series of picturesample values, the method comprising adjusting picture sample valuesbased on watermark values wherein the watermark is derived from acombination of a number of substantially independent watermarks orwherein a number of substantially independent watermarks are embedded ineach picture wherein said substantially independent watermarks satisfythe following criteria:—w ² ₁= . . . =w² _(N)=1  (1)E[w ₁]= . . . =E[w_(N)]=0, where E is the expectation operator  (2)E[w _(k) ·w _(n)]=0 if k≠n  (3).
 2. A method according to claim 1,wherein said number of substantially independent watermarks comprises asubset selected from a defined set of substantially independentwatermarks.
 3. A method according to claim 2, wherein said number isthree.
 4. A method according to claim 2, wherein there are more thanthree substantially independent watermarks in said set.
 5. A methodaccording to claim 1, wherein the subset is selected or saidsubstantially independent watermarks are selected in dependence oninformation to be encoded in the picture.
 6. A method according to claim1, wherein three bipolar watermarks are combined to produce a singlebipolar watermark with the property that the product of the combinedwatermark with each of the constituent marks has an expectation value of½.
 7. A method according claim 1 including generating the watermark byconvolving a key with a repeated data sequence to produce adata-carrying watermark.
 8. A method according to claim 1, wherein thepicture is divided into two or more sub-pictures, and a substantiallyindependent watermark is embedded into each sub-picture.